package mx.itesm.niveles;

import mx.itesm.manejadores.ManejadorRecursos;

import org.andengine.engine.Engine;
import org.andengine.engine.camera.hud.HUD;
import org.andengine.entity.text.Text;
import org.andengine.opengl.font.Font;
import org.andengine.opengl.font.FontFactory;

import android.graphics.Color;
import android.graphics.Typeface;


public class EstadoJuego extends HUD {
	
	/*
	 * **************************************************************
	 *                                         Variables
	 * **************************************************************
	 */
	
	// Variables con el estado del juego
	public int marcador;
	private Engine engine;
	
	// Objetos que se agregan a la escena (muestran el estado)
	public Text txtMarcador;

	/*
	 * **************************************************************
	 *                                         Metodos
	 * **************************************************************
	 */
	
	// Constructor, crea la HUD
	public EstadoJuego(int marcador, Engine engine) {
		this.marcador = marcador;
		this.engine = engine;
		agregarMarcador();
	}
	
	public int getMarcador() {
		return marcador;
	}

	// Actualiza el marcador
	public void aumentarMarcador(int puntos) {
		marcador += puntos;
		txtMarcador.setText("Score: " + marcador);
	}

	// Agrega los titulos
	private void agregarMarcador() {
		
		Font tipoLetra = FontFactory.create(engine.getFontManager(),
				engine.getTextureManager(), 256, 256,
				Typeface.create(Typeface.MONOSPACE, Typeface.BOLD), 40f, true, Color.WHITE);
		tipoLetra.load();
		tipoLetra.prepareLetters("TimeScore: 1234567890.".toCharArray());

		// Crea el letrero del marcador
		txtMarcador = new Text(650, 420, tipoLetra,
				"Score: " + marcador, 13, ManejadorRecursos.getInstance().mVerticesObjetos);
		
		this.attachChild(txtMarcador);
	}
}
